package top.vains.test;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;

import java.util.Date;

/**
* <p>
*
* </p>
*
* @author vains
* @since 2020-03-18
*/
@Data
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel("文件实体类")
public class Files implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 自增id
     */
    @TableId(value = "fileId", type = IdType.AUTO)
    @ApiModelProperty(value = "自增id", dataType = "Integer", example = "0")
    private Integer fileId;

    /**
     * 文件名称
     */
    @ApiModelProperty(value = "文件名称", dataType = "String", example = "0")
    private String fileName;

    /**
     * 文件本地路径
     */
    @ApiModelProperty(value = "文件本地路径", dataType = "String", example = "0")
    private String fileLocalPath;

    /**
     * 类型  0-图片 1-视频  2-音频 3-文档 4-其他文件
     */
    @TableId(value = "type")
    @ApiModelProperty(value = "类型  0-图片 1-视频  2-音频 3-文档 4-其他文件", dataType = "String", example = "0")
    private String type;

    /**
     * 文件类型 0-文件夹  1-文件
     */
    @ApiModelProperty(value = "文件类型 0-文件夹  1-文件", dataType = "String", example = "0")
    private String fileType;

    /**
     * 文件后缀
     */
    @ApiModelProperty(value = "文件后缀", dataType = "String", example = "0")
    private String fileSuffix;

    /**
     * 这里是父文件夹的ID
     */
    @ApiModelProperty(value = "这里是父文件夹的ID", dataType = "Integer", example = "0")
    private Integer fileParentId;

    /**
     * 上传用户ID
     */
    @ApiModelProperty(value = "上传用户ID", dataType = "Integer", example = "0")
    private Integer userId;

    /**
     * 预览图
     */
    @TableId(value = "cover")
    @ApiModelProperty(value = "预览图", dataType = "String", example = "0")
    private String cover;

    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间", dataType = "Date", example = "0")
    private Date createTime;

    /**
     * 更新时间
     */
    @ApiModelProperty(value = "更新时间", dataType = "Date", example = "0")
    private Date updateTime;

}
